package es.ojugames.myplaces;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.Window;


//Activity principal que servira de entrada a la aplicacion y de menu
//para acceso a los demas modulos
public class PrincipalActivity extends Activity {
    
	//Constante para identificar las opciones del menu
	private static final int OPCIONES = Menu.FIRST;
	private static final int ACERCADE = Menu.FIRST + 1;
	
	//Constante para identificar el dialogo
	private static final int DIALOG_ABOUT = 0;
	
	/** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        //Eliminamos la barra de titulos
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        
        //Cargamos el Layout
        setContentView(R.layout.main);
    }
        
    //Metodos de navegacion usados para dar funcionalidad a los
    //botones del menu
    
    //Carga la Activity "ListaLugaresActivity"
    public void goToList(View v) {
    	Intent intent = new Intent(PrincipalActivity.this, ListaLugaresActivity.class);
        startActivity(intent);
    }
    
    //Carga la Activity MapaLugaresActivity
    public void goToMap(View v){
    	Intent intent = new Intent(PrincipalActivity.this, MapaLugaresActivity.class);
    	startActivity(intent);
    }
    
    //MapaLugaresActivity "EditarLugarActivity" en modo "nuevo"
    public void goToNew(View v){
    	Intent intent = new Intent(PrincipalActivity.this, EditarLugarActivity.class);
    	intent.putExtra("modo", "nuevo");
    	startActivity(intent);
    }
    
    //Finaliza la Activity y salimos de la aplicacion
    public void exit(View v){
		setResult(RESULT_OK);
		finish();
    }
    
    
    //Menu que se despliega con la tecla de menu
    @Override
	public boolean onCreateOptionsMenu(Menu menu) {
		super.onCreateOptionsMenu(menu);
//		menu.add(Menu.NONE, OPCIONES, 0,
//				getResources().getString(R.string.opciones)).setIcon(
//				android.R.drawable.ic_menu_manage);
		menu.add(Menu.NONE, ACERCADE, 1,
				getResources().getString(R.string.acercade)).setIcon(
				android.R.drawable.ic_menu_info_details);

		return true;
	}

    @Override
	public boolean onMenuItemSelected(int featureId, MenuItem item) {
		super.onMenuItemSelected(featureId, item);
		switch (item.getItemId()) {
//			case OPCIONES:
//				// opciones()
//				break;
			case ACERCADE:
				showDialog(DIALOG_ABOUT);
				break;
		}
		
		return true;
    }
    
    @Override
	protected Dialog onCreateDialog(int id) {
		switch (id) {
			case DIALOG_ABOUT:
				AlertDialog dialogAbout = null;
				final AlertDialog.Builder builder;
				LayoutInflater li = LayoutInflater.from(this);
				
				View view = li.inflate(R.layout.acercade, null);
				builder = new AlertDialog.Builder(this).setIcon(R.drawable.icon)
					.setTitle(getString(R.string.app_name))
					.setPositiveButton("Ok", null)
					.setView(view);
				
				dialogAbout = builder.create();
				return dialogAbout;
			default:
				return null;
		}
	}
    
    //Metodo que se ejecuta al pulsar sobre el titulo
    public void info(View v){
    	showDialog(DIALOG_ABOUT);
    }
}
		
	
		
